// pages/marketList/marketList.js
const db = wx.cloud.database();
let isClick = true;
Page({

  /**
   * 页面的初始数据
   */
  data: {
    marketList:[],
    name: "",
    address: "",
    contact: "",
    number:"",
    phone: "",
    picurl: "",
    _id:'',
    dialogName:'添加卖场',
    dialogFlag:1,
    hideFlag:true,//true为隐藏   false为显示
    dis:false,//定义事件方法按钮是否可用
  },

  // 删除卖场
  delMarket:function(event){
    var id=event.target.dataset.id;
    var _that=this
    wx.showModal({
      title: '删除卖场',
      content: '您确定要删除这个卖场吗?',
      showCancel: true,
      cancelText: '取消',
      confirmText: '确定',
      confirmColor: '#17abe3',
      success: function(res) {
        if(res.confirm){
          // 将执行删除卖场操作
        wx.cloud.callFunction({
          name:'delMarket',
          data:{
            id
          },
          success: res => {
            wx.showToast({
              title: '删除成功'
            })
            // 再次重新获取全部卖场数据
            _that.getMarketList();
          },
          fail: err => {
            wx.showToast({
              title: '删除失败',
              icon: 'none'
            })
          }
        })

        }
      }
    })

  },
  // 获取所有卖场
  getMarketList:function(){
    const _this=this;
    wx.cloud.callFunction({
      name:'findAllMarket',
      success:function(data){
        // console.log(data)
          _this.setData({
            marketList:data.result.data
          })
          wx.hideLoading({
            success: (res) => {
              console.log("加载成功")
            },
          })
      },
      fail:function(err){
        console.log(err)
        wx.hideLoading({
          success: (res) => {
            console.log("加载失败")
          },
        })
      }
    })
  },

  // 添加卖场
  addMarkets:function(){
    // 显示模态框
    this.clearInput();
    this.setData({
      hideFlag:false,
      dialogFlag:1,
      dialogName:"添加卖场",
      dis:true
    })
  },


  // 获取用户输入的信息

  getName:function(e){
    this.setData({
      name:e.detail.value
    })
  },

  getAddress:function(e){
    this.setData({
      address:e.detail.value
    })
  },

  getConcat:function(e){
    this.setData({
      contact: e.detail.value
    })
  },

  getNumber:function(e){
    this.setData({
      number: e.detail.value
    })
  },
  getPhone:function(e){
    this.setData({
      phone: e.detail.value
    })
  },

// 清空文本框
   clearInput:function(){
    //  console.log("我要清空文本框")
     this.setData({
       'name':"",
       'address':"",
       'contact':"",
       'number':"",
       'phone':"",
       'picurl':""
     })
   },
  
  // 单击确定之后
  acertain:function(){
 
      if (isClick) {
          isClick = false;
          setTimeout(function () {
              isClick = true;
          }, 1000);//一秒内不能重复点击
      }else{
          return;
      }

    // if(wx.showLoading){
    //   wx.showToast({
    //     title: 'loading',
    //     icon:'loading',
    //     mask:true
    //   })
    // };
    
 
    var dialogFlag = this.data.dialogFlag;
    console.log(dialogFlag)
    // 使用dialogFlag 判断这个对话框是修改的对话框还是添加卖场的对话框
    // 1  是添加卖场的对话框
    // 2  修改的对话框
    var _that=this
    if (this.data.name.length<1){
      wx.showToast({
        title: '卖场名称不能为空',
        icon: 'none',
        mask: true
      })
      return false
    }
    if (this.data.address.length < 1) {
      wx.showToast({
        title: '卖场地址不能为空',
        icon: 'none',
        mask: true
      })
      return false
    }
    if (this.data.contact.length < 1) {
      wx.showToast({
        title: '卖场联系人不能为空',
        icon: 'none',
        mask: true
      })
      return false
    }
    if (this.data.phone.length < 1) {
      wx.showToast({
        title: '卖场电话不能为空',
        icon: 'none',
        mask: true
      })
      return false
    }

    var reg = /^[1][3,4,5,7,8,9][0-9]{9}$/;
    
    var name=this.data.name;
    var address=this.data.address;
    var contact=this.data.contact;
    var number=this.data.number;
    var phone=this.data.phone;
    var picurl = this.data.picurl;
    var _id=this.data._id;
    // console.log(_id)
    
    

    // 先判断卖场信息是否存在
    db.collection("market").where({
      name:name,
      address:address,
      contact:contact,
      phone:phone
    }).get({
      success:res=>{
        if(res.data.lenght>1){
          return false
        }
        console.log(res)
        console.log("干嘛")
      }
    })
    this.setData({
      dis:true
    })
    
    
    // console.log(coll)
    // 添加数据到云数据库
    // 如果是1 添加卖场


    if (dialogFlag == 1) {
      _that.data.dis=false;
      _that.dis=false;
      _that.setData({
        dis:false
      })
      wx.cloud.callFunction({
        name: "addMarket",
        data: {
          newData: {
            address,
            contact,
            name,
            number,
            phone,
            picurl
          }
        },
        success: (res) => {
          wx.showToast({
            title: '添加卖场成功',
            icon: 'none',
            mask: true,
            success: function (res) { console.log("我是添加卖场时候的阻碍") },
            fail: function (res) { },
            complete: function (res) { },
          })
          _that.setData({
            hideFlag: true,
            dis: true
          })
          // 清空数据
          _that.clearInput();
          // 重新获取全部卖场列表
          _that.getMarketList();
        },
        fail: (err) => {
          wx.showToast({
            title: '添加卖场失败',
            icon: 'none'
          })
        }
      })
      _that.setData({
        dis: false
      })
    } else if (dialogFlag == 2) {
      console.log(dialogFlag)
      console.log(_id)
      var name = _that.data.name;
      var address = _that.data.address;
      var contact = _that.data.contact;
      var number = _that.data.number;
      var phone = _that.data.phone;
      var picurl = _that.data.picurl;
      var _id = _that.data._id
      console.log("我是测试名字是否被修改:", contact)
      console.log(_that.data._id)
      // 如果是2 就是修改
      wx.cloud.callFunction({
        name: "updateMarket",
        data: {
          newData: {
            id: _id,
            address,
            contact,
            name,
            number,
            phone,
            picurl
          }
        },
        success: res => {
          console.log("我是输出信息", res)
          wx.showToast({
            title: '修改成功',
          })
          _that.setData({
            hideFlag: true
          })
          //  重新获取全部卖场列表
          _that.getMarketList();
          return false
        },
        fail: err => {
          wx.showToast({
            title: '修改失败',
            icon: 'none'

          })
        }
      })
    }
    

    this.setData({
      dis:false
    })
  },
  // 单击取消之后
  cancel:function(){
    this.setData({
      hideFlag: true
    })
  },
  // 单击添加图片
  addImg:function(){
    var that=this
    wx.chooseImage({
      count:1,
      sourceType:['album','camera'],
      success: function(res) {
        var tempFilePaths = res.tempFilePaths;
        console.log(tempFilePaths[0])
        that.setData({
          picurl: tempFilePaths[0]
        })
      },
    })
  },
  // 隐藏对话框
  hideModal:function(){
    this.setData({
      hideFlag: true
    })
  },

  // 修改卖场信息
  modifyMarket: function (event) {
    this.setData({
      dialogName:"修改卖场",
      dialogFlag: 2,
      dis:true
    })
    var id = event.target.dataset.id;
    var _that = this
    // 根据id获取数据
    db.collection("market").doc(id).get({
      success:res=>{
        // console.log(res)
        _that.setData({
          _id:res.data._id,
          name:res.data.name,
          address:res.data.address,
          contact:res.data.contact,
          phone:res.data.phone,
          number:res.data.number,
          picurl:res.data.picurl
        })
      },
      fail:err=>{
        console.log(err)
      }
    })
   
    _that.setData({
      
      hideFlag:false,
    })


  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {

  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function () {
    wx.showLoading({
      title: '加载中……',
    })
    this.getMarketList();
  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function () {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function () {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function () {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function () {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function () {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function () {

  }
})